The statements in this section merely provide background information related to the present disclosure and may not constitute prior art.
In the typical image compression techniques such as H.264/AVC to perform a predictive encoding on a motion vector obtained by an estimation of a motion based on a block, the motion vector to be encoded is compressed by determining a predicted motion vector by using a median of motion vectors of neighboring blocks of the block to be encoded and by variable-length encoding a differential between the motion vector and a predicted motion vector.
The International Telecommunications Union-Telecommunication Video Coding Expert Group (ITU-T VCEG) has developed a codec named Key Technical Area (KTA) having a better performance based on the H.264/AVC standard, and improved the existing H.264/AVC motion vector encoding method through a method called MVComp (Competition-based Motion Vector Coding).
MVComp is a method of selecting a predicted motion vector candidate having a minimum value of a differential between a current motion vector and a motion vector obtained by a prediction from a plurality of predicted candidate motion vectors and transmitting information on a selected predicted candidate motion vector to a decoder, and achieving an improvement in encoding compression efficiency by 5% compared to that of the existing H.264/AVC standard. However, MVComp has a drawback in that the quantity of indexing side information to be transmitted to the decoder increases as the number of predicted motion vector candidates increases.
In this respect, there were suggestions including a technique for an encoder to select one motion vector from a plurality of predicted candidate motion vectors, which is presumably the most similar to a current motion vector and transmitting side information for identifying only whether the selected motion vector is an optimum motion vector. However, the proposed techniques have problems of a decoder crash of failing to reconstruct the current frame and frames occurring before a next intra frame due to an error generated in a previous frame and an increase of an amount of calculations demanded of the decoder.
Accordingly, methods have been proposed to determine the motion vector of a block to be currently encoded by using motion vectors around the current block. The methods address the decoder crash problem by efficiently transmitting indexing side information by using motion vectors of neighboring blocks and selecting a predicted motion vector apart from information on a previous frame. However, since the methods use a limited number of motion vector candidates, the compression performance is disadvantageously limited.